Recording system

ABSTRACT

The invention relates to an apparatus and method for recording transmitted data items, and particularly television and radio programs. The data items are received at one or more inputs along with ID data identifying the transmitted data items and the program series to which the data item belongs. An input interface receives input indicating whether one or more received transmitted data items have been viewed or recorded by a user and a processor generates values for ranking the series to which each of the received data items belong based upon the received input. Subsequently received transmitted data items are stored in a storage device based on the generated values, the stored data items belonging to a series for which a value has been generated.

PRIORITY CLAIM

This patent application is a Continuation of U.S. Non-Provisional patentapplication Ser. No. 14/275,538, filed May 12, 2014, published as U.S.Publication No. 2014/0248037, entitled “RECORDING SYSTEM,” and issued asU.S. Pat. No. 9,350,967 on May 24, 2016, which is a Continuation of U.S.Non-Provisional patent application Ser. No. 13/029,322, filed Feb. 17,2011, published as U.S. Publication No. 2011/0206342, entitled“RECORDING SYSTEM,” and issued as U.S. Pat. No. 8,724,971 on May 13,2014, which claims priority to European Patent Application No.10250302.6, filed on Feb. 19, 2010, and titled “Recording System,” thecontents of which are incorporated herewith in their entireties.

TECHNICAL FIELD

This invention relates to an apparatus and method for automaticallyrecording broadcast items to a storage device.

BACKGROUND

Recording devices for recording transmitted data items such astelevision or radio programmes are common place devices, existing inmany homes. In particular, digital video recorders have grown inpopularity considerably in recent years.

Despite the advances made in recording technology users often forget toset their recording devices to record programmes that they usually watch“live”, for example when going on holiday, causing them to miss thedesired programmes while away from home. Even if the user does rememberto set the recording device, such devices have limited memory resourcesto store programme data and it becomes difficult to calculate how muchspace they will need.

SUMMARY

The invention is defined in the independent claims to which referenceshould now be made. Advantageous features are set forth in the dependentclaims.

Apparatus and method for recording transmitted data items, andparticularly television and radio programmes are disclosed. The dataitems are received at one or more inputs along with ID data identifyingthe transmitted data items and the programme series to which the dataitem belongs. An input interface receives input indicating whether oneor more received transmitted data items have been viewed or recorded bya user and a processor generates values for ranking the series to whicheach of the received data items belong based upon the received input.Subsequently received transmitted data items are stored in a storagedevice based on the generated values, the stored data items belonging toa series for which a value has been generated.

BRIEF DESCRIPTION OF THE DRAWINGS

Examples of the invention will now be described in more detail, withreference to the drawings in which:

FIG. 1 is a schematic view of a set-top box according to an exemplaryembodiment;

FIG. 2 is an example of a database table that may be generated to storeinformation on watched programmes;

FIG. 3 is an example of how ratings are allocated to programmes;

FIG. 4 is an example of how programmes can be ranked according to thelevel of confidence that they are actually watched for a particularviewing period;

FIG. 5 is a further example of how programmes can be ranked according tothe level of confidence that they are actually watched for a secondparticular viewing period;

FIG. 6 is an example of average scores calculated for a set ofprogrammes; and

FIG. 7 is an example of a prioritised list of programmes.

DETAILED DESCRIPTION

Embodiments of the invention may provide an apparatus for recordingtransmitted data items. Transmitted data items may include transmittedprogrammes such as radio or television programmes, transmitted viaairwaves, internet, wireless network, cable or any other transmissionmethod. The apparatus comprises one or more inputs for receivingtransmitted data items and ID data identifying the transmitted items aswell as the series of data items to which each transmitted data itembelongs, a storage device for storing received transmitted data itemsand one or more input interfaces for receiving input indicating orimplying whether the received transmitted data items have been viewed bya user, for example, by being displayed on a screen, or recorded onto astorage device. The apparatus may also include a processor configured togenerate values for ranking each series of received data items basedupon the input received at the input interfaces, and a memory containinga database arranged to store the generated values and associate themwith the ID data. The generated values are confidence indicators,indicating a ranked level of confidence as to whether a transmitted dataitem was viewed and/or recorded by a user. The processor is configuredto store data items belonging to ranked series in the storage devicebased on the stored values.

In an exemplary embodiment, the processor generates the values forranking each series by first generating values for ranking each receiveddata item based upon the input received at the input interfaces, andthen combining these values for each of the received data items in aparticular series.

The ranking of a transmitted data item, or a series of transmitted dataitems, may be modified depending upon input received at the inputinterfaces. The processor can modify the confidence values by increasingor decreasing an initial value by a predetermined amount in response tofurther input received at the input interfaces. In particular, this mayinclude calculating the elapsed time between two events using a clocksignal, one of the events being the receiving of input at an inputinterface or being triggered thereby, the generated values alsodepending upon the elapsed time.

In an exemplary embodiment, the input interfaces comprise one or more ofa remote control receiver, for receiving input from a remote control, ahardwired component coupled to a physical control on the apparatusand/or a receiving circuit for receiving a signal from an interconnecteddisplay device, such as an HDMI connected device. The specific inputsprovided to the input interfaces could be one or more of a channelchange signal, a volume change signal, a mute signal, a signal to accessan electronic programme guide or a signal to record a particulartransmitted data item. In particular, the apparatus may be configured toincrease the confidence value of a transmitted data item in response toreceiving one or more of the following inputs at the input interfaces:an increase in volume signal; a volume mute for less than apredetermined period of time; or an access to an information menu forless than a predetermined period of time. The apparatus may also beconfigured to decrease the confidence value of a transmitted data itemin response to receiving one or more of the following inputs at theinput interfaces: a volume mute for longer than a predetermined periodof time; an access to an information menu for longer than apredetermined period of time; a switch off signal; or a connected deviceswitch off signal.

In an exemplary embodiment, when the transmitted data items aretelevision or radio programmes, the apparatus may be configured tocompare the time at which a channel change occurs and the time at whichthe first programme starts on the new channel, and to increase theconfidence value if the difference is within a predetermined range. As afurther option, the apparatus may be configured to compare the time atwhich a channel change, set-top box switch off or connected deviceswitch off occurs and the time at which the programme ends, and decreasethe confidence value if the time difference is within a predeterminedrange. The apparatus may optionally be configured to decrease theconfidence value of programmes following a first programme after achannel change.

Optionally, the apparatus can check free space on the hard drive,estimate the space required for recordings and alert the user if therecordings will exceed the available space. Preferably the apparatus canautomatically make best use of available space by prioritisingrecordings or changing resolution rate of recordings if space is low,for example downgrading High Definition (HD) resolution programs to alower resolution or to standard resolution. The user may be providedwith the option to edit recordings if free space will be exceeded.

Embodiments can be incorporated into recording systems to eitherautomatically, or at a prompt, take care of recording the most likelyprogrammes a user would like to watch while the user is away from home.

Embodiments may be incorporated into a set-top box, radio, computer,media computer or display device, or any similar type of device.

Embodiments may also provide a corresponding method for recordingtransmitted data items such as radio or television programmes, broadcastvia airwaves, internet, wireless network, cable or any othertransmission method. Transmitted data items and ID data identifying thetransmitted data items and the series to which a transmitted data itembelongs are received at one or more inputs, and inputs indicatingwhether one or more received transmitted data items have been viewed orrecorded by a user are received at an input interface. Values aregenerated for ranking the series to which each of the received dataitems belong based upon the received input. Subsequently receivedtransmitted data items are then stored in a storage device based on thegenerated values. The stored data items belonging to a series for whicha value has been generated. The generated values may be stored in adatabase in a memory and associated with the ID data. Further optionalmethod steps are also provided for undertaking the steps described abovefor the apparatus.

Embodiments may also provide for a computer readable medium havingcomputer code stored therein, wherein the computer code, when executedon an appropriate apparatus, causes the apparatus to carry out themethod described herein.

Further embodiments of may also provide an apparatus for recordingtransmitted items comprising a first input for receiving, from a firstsource, transmitted data items and ID data identifying the items, astorage device for storing received transmitted data items, a databasefor storing ID data of transmitted data items to be recorded to thestorage device and a processor. The apparatus further includes a secondinput, which may be combined with the first, for receiving, from asecond source, ID data identifying transmitted data items that arestored remotely from the apparatus and comparing means for determiningwhether ID data in the database corresponds to ID data from the secondsource. The apparatus is configured such that, if there is a match, theprocessor prevents storing of the transmitted data item to the storagedevice and stores a tag identifying the location of the remotely storedtransmitted data item. A set-top box or similar device incorporating anapparatus according to this embodiment of the invention can detect whichprograms are available through a catch-up service, and perhaps recordonly highlights, then download from the catch-up service if the userattempts to select the content, or alternatively the apparatus coulddirect the user to the catch up service. A corresponding method is alsoprovided.

It will be understood that data items, such as television or radioprogrammes, can not only be received over the airwaves, but also byother means such as the internet, cable, wireless networks and the like.For the avoidance of doubt, the term “transmitted programme” will beused throughout the description to refer to a programme transmitted froma broadcaster by any means.

FIG. 1 shows an exemplary embodiment applied to set-top boxes. A set-topbox (1) (STB) includes a digital video recording (DVR) function. Areceiving device such as a tuner/demodulator (10) is provided to receivebroadcast streams, internet delivered streams or the like containingtransmitted programmes. Under control of the user via an interfacedevice such as a remote control (71) or front panel buttons (72) theuser selects a particular programme/channel to watch or record. Thiscauses the demultiplexer block (20) to select that particular programmestream and either send it to a video decoder (30) and then to a displaydevice (32), such as a television, for watching immediately or send itto a storage device (50) to be watched later. The remote controlreceiver (70) and front panel buttons (72) are referred to as inputinterfaces. They receive input indicating whether received transmitteditems have been viewed or recorded by a user and provide appropriatesignals to the processor. Other input interfaces may be provided.

The demultiplexer block (20) also contains a mechanism for extractingprogramme data (21) which is carried alongside the video and audiostreams. This data is in varying formats but generally carried to agreedstandards such as DVB-EIT, TV-anytime etc; and typically containsinformation about the current program, future programs on the currentchannel and also other channels that can be received on a particularservice. Alternately this information may be supplied from data serverson the internet. This data is commonly called schedule information and,generally, for each broadcast item contains a Programme Name, Start/Stoptime and then a detailed description for each episode. There may beadditional information such as unique program identifiers, unique seriesidentifiers and also links to future episodes of the programme.

Each time the user selects a transmitted programme to record via theprogramme schedule, the programme name and identifier appropriate to theprogramme are logged into an area of memory (60). The system may alsolog programmes which are decoded by the box when it is in an activestate and providing an output that could be being watched. The memorytype should ideally be such that its content would be protected evenduring a power down, so non-volatile memory is preferred such as flashmemory, EEPROM, MRAM, or hard disk. A list is thus built up in memory ofthe user's preferences in terms of programs recorded and watched, or atleast output from the set-top box.

Over a period of time the STB will build a database of the user'sviewing habits containing programme names, time and date information.However, just because a particular programme stream is selected by thesystem, and provided as an output for displaying on a display device,this is not necessarily indicative of the user actually watching atransmitted programme. Therefore, the database also includes informationindicating the degree of confidence that a programme was actuallywatched by a user so as to build up a prioritised list in memory of theuser's preferences. In order to limit the size of the database,information on programmes may be removed from the database after aperiod of time, for example 1-3 months. Various compression algorithmsmay also be applied to limit the size of data.

FIG. 2 shows an example of a database table that may be generated for aparticular user or set of users and demonstrates how a prioritised listcan be built up in memory. Against each programme in the database thedates on which the transmitted programme was output by the system arerecorded. Against each instance that the programme is recorded as beingoutput there will be a confidence level that can be used to determinewhether the programme was actually being watched or the apparatus justhappened to be switched on.

The system operates by assigning a score to each programme between afirst and second value. The closer the score is to the first value, thehigher the confidence that the programme was watched. The closer thescore is to the second value, the lower the confidence that theprogramme was watched. Typically the first value will be a higher valuethan the second value, but it will be appreciated that a system could bedesigned with the reverse being true. The confidence levels arecalculated based on various input data received from one or more inputinterfaces on the device, such as the remote control receiver (70) shownin FIG. 1, which receives input from a remote control device (71), orfrom physical controls such as front panel buttons (72) on theset-top-box device. The received inputs, or indicators, are assignedvalues of confidence; these values may be weighted according to howconclusive the indicator is that a programme was actually watched. Bothpositive indicators and negative indicators may be combined to reach anoverall score.

FIG. 3 shows an example of a database employing such a ranking system,with typical rank values that would be assigned. The system is arrangedto respond to various events which are triggered by inputs received atone or more input interfaces of the system. A number of examples ofinputs received by the input interfaces of the set-top-box, and thecorresponding score assigned to them, are described below in relation toFIG. 3. As indicated by FIG. 3, the inputs received by the inputinterfaces may not be intended, as their primary function, to indicatethat a programme was watched by the user; the system takes advantage oftheir primary function to provide, as a secondary function, anindication of the likelihood that a programme was actually viewed. Thisallows the system to automatically generate values for rankingprogrammes or series of programmes based upon the received input,without requiring direct input indicating preferences for particularprogrammes from the user. In this way a profile of preferred series canbe automatically generated and those series automatically recorded.

FIG. 3 also shows how modifiers or negative indicators can be applied toscores to account for inputs that indicate a programme has not beenwatched. Negative indicators, also based on inputs received at an inputinterface, may also be used to reduce the confidence score associatedwith a programme. Negative indicators may include inputs resulting froma user switching channels or turning off the apparatus during a “live”programme, or stopping the replay of a recording a significant timebefore the end of a programme. Negative indicators could also beattributed if the box was muted for a significant amount of time or ifthe user spent a significant amount of time in some associated sidecarservice or accessing menus that would detract from viewing, as arecommon in digital television services. Any number of theseindicators/modifiers in any combination may be used to provide anindication of the likelihood that a given programme was actuallywatched. In the example, programmes are given a score between 0 and 10,but it will be appreciated that different score systems are possibleprovided each programme can be assigned a value indicative of how likelyit is that the programme was actually watched.

Programmes output by the system immediately after a channel change, orswitching on the apparatus, are given a high confidence weighting,particularly if the change occurred near to the beginning of theprogramme. The score can be modified depending upon how near the channelchange/switch on occurs to the start of the programme, and the durationof the programme in question. As the time difference from the beginningof the programme increases the rank can be reduced, with an alternateranking for programmes of short duration. For example, a maximum scoreof 10 points may be assigned if a programme is switched to within awindow of 5 minutes of starting. This can reduce to a score of 8 betweena window of 5 to 10 minutes from starting and a score of 6 between 10and 15 minutes of starting. If the programme is of a shorter durationthe score can be reduced for each window, or the length of time for eachwindow can be reduced. Programmes output following switch on can beignored if switch on occurs more than a predetermined time after thestart of the programme. Subsequent events during that programme may thenbe ignored for the purpose of ranking that programme and subsequentprogrammes may also be ignored.

In order to detect whether the channel change occurred near to thebeginning, programme scheduling information can be compared with a clocksignal by the processor (90). The clock signal could be provided from anon-board clock (91), or derived in software; in either case it will besynchronised with the programme transmission. The programme schedulinginformation could be stored locally on the STB, provided with thetransmitted programme or provided separately via a different input.

Subsequent programmes following the first programme after a channelchange can be given a decreased level of confidence unless there is someother input received at the apparatus from the user. For example, eachsubsequent programme may score one less point than the previousprogramme if no interaction occurs with the system.

Programmes that are specifically recorded on instruction by the user aregiven a high confidence weighting or level. The user would typically usean input device to select the programme or programme series to berecorded from a schedule database. The processor or CPU (90) wouldrecord this event against the relevant programme or set of programmes inthe database. In the example of FIG. 3, a programme that has beenspecifically set to record is given a confidence score of 10.

The system may also monitor whether a recorded programme is subsequentlywatched. The CPU can determine the length of time between recording aprogramme and viewing the recording. A programme is recorded as a resultof receiving input information at one of the input interfaces indicatingit should be recorded; a recorded programme is viewed as a result of oneof the input interfaces receiving input indicating the recordedprogramme should be viewed. If a recorded programme has not been viewedafter a predetermined period of time, the overall score can be modifieddepending on the elapsed time for which the programme has goneunwatched. For example, after 7 days the score may be reduced by 1, withthe score being reduced for each subsequent day, or a predeterminedpattern of days as illustrated in FIG. 3.

Inputs received at an input interface that could be used to identifywhether the user actually watched a particular programme may alsoinclude other interactions with input devices such as a remote controlor buttons on the set-top box during the period of the programme.Specifically, altering the volume, and particularly increasing it, wouldindicate that the programme was actually watched, as would accessing theelectronic programme guide (EPG) or other service information,particularly to look up information on the programme currently beingbroadcast. FIG. 3 shows how these inputs can be used to adjust the scoreof a programme.

If the volume is adjusted within a predetermined range, or muted formore or less than a predetermined period of time, this can be used toscore a programme. For example, if volume is adjusted within the normaloperating range it is likely that the programme is being watched, andthe user simply wishes to adjust the volume to a more comfortable level.Hence, when this occurs the programme in question is given a highconfidence score, such as 10. If the volume is muted for a short periodof time, such as less than 1 minute, then it is probable that the userwas watching the programme but was interrupted, and hence a high scoreis still assigned. However, if the volume is muted for a long period oftime, such as more than 10 minutes, it is likely that the user was notactually viewing the programme and the overall score of that programmecan be reduced accordingly.

One common feature of digital services, particularly digital televisionservices, is the provision of information menus such as programme guidesand scheduling information that can be displayed during a programme.These menus could be small or partial menus, which do not greatlyobscure the programme being displayed, perhaps appearing to the edge ofthe display screen. Alternatively, the menus may cover a largeproportion of the screen, such as a full screen menu in which theprogramme being viewed is completely obscured or displayed in a smallerinset window. The score assigned to a programme can be modifieddepending upon whether any information menus are accessed and whetherthey are accessed for more or less than a predetermined period of time.

Accessing a partial menu indicates that the user is watching theprogramme being displayed, but may be looking for the next programme towatch. Therefore, programmes for which a partial menu is accessed may beassigned a high confidence value. Accessing a full screen or largeinformation menu for a short period of time probably indicates that theuser was still watching the programme. Therefore programmes for whichthis occurs are given a score dependent upon the period of time forwhich such menus are accessed. In the example of FIG. 3, a decreasingscore is assigned over a period of 5 minutes, and a negative modifier isassigned for periods longer than 5 minutes. A similar rule can beapplied to interactive sidecar services, such as information services.If an interactive sidecar is accessed for less than a predetermined timethen a particular score can be assigned, the score decreasing as thetime spent in the sidecar increases. Past a certain period of time anegative modifier could be used to decrease the score associated with aprogramme. Examples of such side car services are teletext, MHEGapplications, Open TV applications etc, carried on services such asFreeview, BSkyB etc.

If a programme is switched off, either by switching off the entiresystem or just switching channels, more than a predetermined period fromthe end then the score can be adjusted accordingly with a negativemodifier. The same can apply if a recording of a programme is stoppedmore than a predetermined amount of time from the end. In this case, thetotal score of a series can be modified.

The system can be arranged to select particular events from a pluralityof events to determine a programme ranking for simplicity. If multipleevents occur when a programme is being output then a preferred rankingthat can be applied to the programme is the highest of the positiveevents recorded for the programme plus the lowest of the negativeevents. Thus, for the example of FIG. 3, a programme watched from thebeginning would score the highest rank of +10 and subsequent positiveactions such as increasing the volume would be ignored. If, during theprogramme, a full screen guide without inset video was accessed for 6minutes (a modifier of −2) and the volume was muted for more than 10minutes (a modifier of −5), this would attract a total modifier of −5,producing an overall rank of +5.

Once a programme is entered into the monitoring list, the system willthen monitor for future versions or episodes of that programme in theschedule. This is achieved either by searching by programme name or byusing unique series identifiers dependent on the metadata beingbroadcast for a particular system. Thus, it is also possible to monitorfor episodes of a series that have not been watched. This could beaccounted for by assigning an episode of the programme with a zerovalue, which will then reduce the overall average score for the series.This might not be conclusive evidence as the programme could have beenwatched by some other means, but it can be useful in providing anoverall picture and building a more reliable database.

The system may also include monitoring means for identifying whenassociated components to the viewing system are switched off, such as ifa TV connected using HDMI were switched off, since this is also a verygood indicator that the programme is no longer being watched. Areceiving circuit may be provided to identify when a signal is receivedindicating an associated component has been switched off, or to identifywhen a signal is no longer present indicating that the associatedcomponent has been switched off. Preferably the HDMI transmitter (31)includes a signaling mechanism to signal when the display (32) connectedis active and when it is turned off.

It will be appreciated that users may often watch content from devicesother than their set-top box and locally connected display. Recordingdevices have been developed that allow content, either in real time orfrom a storage device, to be transcoded to alternate formats and bitrates and streamed to a remote device (12) such as a laptop, portablecomputer, mobile device, MP3 or MP4 player, PDAs or similar. Suchsystems include the SlingLoaded system that combines a digital videorecorder (DVR) with this functionality. There could also be devicesconnected to the local network connection such as a Digital LivingNetwork Alliance (DLNA) media player (13). Whenever content is streamedfrom the set top box by any means it can be assumed and treated as if alocal viewing were to take place. The content may also be downloadedfrom the set top box to a portable device for viewing on the move. Boththese options could be allowed for in the ranking table by allocatingpoints for viewing by this mechanism. To achieve this, the set-top box(1) may include a detection circuit (not shown) to identify when usersremotely access their content, using a remote device, either from thestorage device or directly from the video decoder. If the system detectsthat a programme has been downloaded to a remote device, or streamed toa remote device then the confidence score for that programme can bealtered accordingly. In the example of FIG. 3, such an event is given ahigh confidence level.

FIGS. 4 and 5 each show an example of a typical viewing day, itemisingthe events that occur during a programme, and how these then relate tothe rankings that are assigned to individual programmes on those days.Information provided on a daily basis, as illustrated in FIGS. 4 and 5,are compiled into a larger database of the sort shown in FIG. 2. Thesystem then generates from the database a preferred list of programmes.One method to do this is to total the points score for all indicatorsassociated with each programme and then average by the number of timesthat programme occurred in a specified time period (i.e. the totalnumber of episodes within the time period). Care must be taken however,using the Content Reference ID, which identifies a particular episode ofa particular programme, to make sure that repeat showings of an episode,or showings on a time shifted channel are included/excluded asappropriate from these calculations. This can be achieved by onlycounting a programme having a particular Content Reference ID once. Forinstance a programme may have two showings, one at peak time and then arepeat perhaps on a different day and sometimes a different channel. Fora particular episode it would only be recorded once in the database,even if it were watched twice. Optionally in this particular instancethe value for the episode could be the total of the points for bothindividual viewings, as this could indicate a stronger preference forthis program if it was watched multiple times. Thus using a positivescoring system it could be possible for a program to achieve more thanthe normal maximum limit. It could be desirable to limit this value insome way however to control the effect of viewing multiple times. Thisis shown in FIG. 3, with P1 and P2 indicating the first instance of theprogramme and the second instance of the programme respectively, with anoverall limit of 12 being applied.

FIG. 6 shows how, from the examples illustrated, an average score can becalculated for each programme, giving a ranking value for each series.These scores will then be sorted by the CPU (90) and a prioritised listfor each series such as that shown in FIG. 7 will be arrived at. Thehigher the value the more likely it is the programmes of a series wereactively watched and therefore that it should be recorded. At this stagea threshold value can be invoked. Programmes of a series above apredetermined level would be recorded and programmes below ignored. Withthe list of FIG. 7 this value might be 7.5. The threshold value could bestatically defined or could be varied dynamically dependent upon theamount of recording space available. The exact allocation of points andthe associated calculation may be modified to provide a more accurateindication. With a prioritised list in place the CPU (90) will thensearch the schedule for those programmes, either by programme name orID, for a predetermined period of time into the future. The period forwhich the system can check schedule information is limited by the periodfor which schedule information is provided. Preferably the period oftime is one or two weeks, since this is the typical period for whichschedule information is available. The processor will then set thoseprogrammes which are designated as highly likely to be watched to berecorded.

If the length of time the user will be away from home is greater thanthe time period provided for programme schedule data then the apparatuscan be programmed to assume that particular programmes will occur on aregular basis. The apparatus can be arranged to reserve spaceaccordingly in the storage device so that when programme data doesbecome available in the schedule the programme can be identified andrecorded. The apparatus preferably starts with the highest priorityprogramme and searches for that programme on a repeating basis throughthe schedule. The system can be arranged to make maximum usage of thestorage space available, assess the amount of free space available andprovide a proposed list of recordings based on programme ranking andfree space which the user can accept or modify.

Optionally, the STB may have access to information from a user'scalendar. The calendar/diary may be stored in a memory on the STB orcould be held on an external memory on another device such as a mobilephone or personal digital assistant (PDA) that the STB can link to andinterrogate. Users can then maintain a diary indicating when they willbe away from home or unable to access their STB so that the system willautomatically know when the user will be unable to view programmes. Thesystem can then automatically analyze the previous viewing habits tobuild a list of preferred recordings that should take place whilst theuser is away.

As well as automatic recording based upon the user's calendar, it isalso possible for the user to select this recording mode manually, forexample just before leaving the house. The system may also be arrangedto advise the user of the best recording strategy to take maximumadvantage of free hard disk space. The system can also advise if inorder to meet the most preferred list if the user will in fact need tofree up more space on his hard disk drive. In order to determine thedisk size needed the STB typically utilizes the programmes length intime plus an estimation of the bit rate, for example depending uponwhether the signal is encoded in SD or HD. These factors can provide anestimate of the likely storage capacity required for each programme.This is compared with the current free space which can easily becalculated by subtracting the total of all current file sizes asrecorded by the recording file system from the known capacity of therecording medium.

If the system determines there is not enough space on the hard drivethere are several mechanisms that may be employed to mitigate this andextend the recording capabilities or finding alternate sources for thecontent. The system may remove unwanted recordings from the hard drive.These could be recordings which have been present for longer than apredetermined time period, corresponding to a considerable time,preferably have not been protectively marked to indicate they should bekept, and have not been watched within a predetermined time period—i.e.recently. There may be earlier recordings which have been recordedspeculatively; these may also be identified for deletion if they havebeen available for some time. The user would of course be warned aboutsuch removal first.

As a further optional feature, advantage can be taken of the detectioncircuit used to identify when users remotely access their content usinga remote device. In this case if the user was relying on the automaticmechanisms to schedule their recording and there is insufficient harddrive space, then based on the fact that the user has watched thecontent remotely, the processor can delete the recording, or update thedatabase such that this content is not recorded in the future. The userwould, however, still have the option to connect directly to the DVRfunction to override this and directly control the recording of the DVRif required.

Optionally, the set-top box may include additional means to increase thenumber of programmes that can be stored. An embedded transcoding device(40) may be provided to recompress recorded video and audio to lowerdata rates or resolution when there is insufficient capacity. Recordedprogrammes will be compressed by the transcoding device from HD qualityto standard resolution, for example. The system can be arranged to applycompression only to those programmes with a confidence value in aparticular range, or to apply compression in preference order ofconfidence values from low to high.

The set-top box may also feature an internet connection, which allowsthe system to interrogate online sites to query if particular contentwill be available via catch-up services at the end of the period forwhich the user is away from home. In this case, if there are programmesthe system is set to record that are available via the internet, thesystem can instead suggest that the user accesses the content from theinternet. If the desired programme or series of programmes is found tobe available online, a marker will be created in the DVR recording list.This may simply be a textual description or it may extend to either astill image or short highlight clips captured instead of the fullprogramme. It will then create a link to the online version of thecontent when it becomes available, such that the content can be accesseddirectly on return without needing to search for it.

This technique can also be applied to the normal process of hard diskrecordings when either the hard disk becomes full or a recording failsfor some reason. In that case the receiver can automatically search foran online version of the content and provide a link directly to theserver where such content is located. This aspect of the invention maybe applied to any recording device having a connection to the internet,and does not necessarily require the other aspects of the invention tobe implemented.

A further optional extension of the techniques discussed above is thateven in normal operating mode the DVR will analyze the viewers programmehabits and will make use of the unallocated area of hard drive. Thesystem can be arranged to monitor the list of “watched/recorded”programs. If it identifies a programme currently being broadcast thatthe user would normally watch and it detects that the box is not beingwatched and the programme has not been tagged to record, then it willautomatically record it to the unallocated area, providing there isspace on the hard disk. The programmes recorded to this area can beidentified by a specific label, be placed in a separate list in thedatabase, or displayed in a different list in the interface. Theseprogrammes may be called missed or suggested programmes, for instance,to distinguish them from recordings the user has purposely selected. Tolimit inconvenience to the user, recordings of this type can beautomatically managed, for example being deleted on a first in, firstout basis. Programmes of this type can also be automatically deleted ifthe user wishes to record a programme and space is required, or if newercontent is identified to record in this area. It is preferable that theuser is able to transfer content from this area to the users own area.

Advantageously, a display interface can be provided to provide aconfiguration menu such that the user can control the operation of thevarious modes highlighted above. This menu allows the various modes tobe enabled or disabled. It would allow the management of calendarentries. It would allow the automatic or manual selection of thisfeature. It would allow certain channels to be excluded from themonitoring process. This can be advantageous when there are multipleusers of the same receiver or it is left tuned to inconsequentialchannels for long periods such as children's channels or news.

The embodiments of the invention have been described as using atuner/demodulator which is typically used to receive transmitted dataitems, such as programmes broadcast over the air. Multipletuners/demodulators may be used. Each tuner provides a transport streamwhich may contain information for several different programmes.Embodiments of the invention can equally utilise transmissions that arenot transmitted over the air but are provided, for example, via a cable,or some other form of connection such as a broadband or IP network.

It is possible that transmitted programme information may be providedseparately to the transmitted programme data, in which case thedemultiplexer block (20) would not need to contain a mechanism forextracting programme data. Instead the programme data may be processeddirectly by the CPU (90).

Although described as being internal to the set-top box, the memory (60)on which the database of user viewing preferences is constructed may beexternal to the box, allowing the user to maintain their list on aportable device such as a mobile or PDA. The set-top box would be ableto remotely access and interrogate the portable device to populate orupdate a local database.

The storage device (50) has been referred to throughout as a hard drive,but it will be appreciated that any type of suitable storage device suchas flash memory may be used. It is also possible for the memory (60), onwhich the ranking database is stored, and the storage device (50) to bethe same memory device.

It will be appreciated that whilst the invention could be incorporatedinto separate set-top boxes, it is not limited to traditional set-topbox devices as such, since it could be incorporated directly into adisplay device such as a television, or could be incorporated in acomputer system capable of receiving and outputting media.

The invention has been described in relation to transmitted data items,and particularly transmitted television programmes. Transmittedtelevision programmes feature both video and audio components. However,it will be appreciated that the invention could be applied to radioreceivers that receive programmes comprising only sound components, andparticularly digital radios with in-built storage devices. Furthermore,the invention finds uses in any system that receives data items thatbelong to a series of data items that the user may want to store tomemory.

As mentioned above, it is possible to implement a scheme in which areceiver or set-top box automatically searches for an online version ofcontent and to provide a link directly to the server where the contentis located. Therefore, another aspect of the invention may provide anapparatus for recording transmitted data items, the apparatus comprisinga first input for receiving, from a first source such as over the airbroadcasts, internet, wireless network, cable or any other transmissionmethod, transmitted data items and ID data identifying the items; astorage device, such as a hard disk drive, for storing received dataitems; a database for storing ID data of data items to be recorded tothe storage device and a processor. The apparatus differs from knownhard disk drive recorders or the like in that a second input is providedfor receiving, from a second source such as over the internet, ID dataidentifying data items that are stored remotely from the apparatus, suchas on a remote server. Comparing means, such as a comparison circuit, orthe processor itself, are provided for determining whether ID data inthe database corresponds to ID data from the second source. If there isa match the processor stores a tag identifying the location of theremotely stored data item. If memory is short, the apparatus may alsoprevent the storing of the data item to the storage device. Thus insteadof recording locally, maximum use is made of online storage andrecording mechanisms. A corresponding method is also provided forrecording transmitted items comprising receiving at a first input of anapparatus, from a first source, transmitted data items and ID dataidentifying the items; receiving at a second input of the apparatus,from a second source, ID data identifying transmitted data items thatare stored remotely from the apparatus; comparing the ID data receivedfrom the first and second sources and, if there is a match between theID data from the first and second sources and storing a tag in a memoryidentifying the location of the remotely stored transmitted data item.Optionally, the further step of preventing the storage of transmitteddata items to a storage device can be implemented.

This aspect of the invention can be implemented with or without theother aspects of the invention described above.

The above description is intended to illustrate example embodiments ofthe invention, but should not be taken to limit in any way the inventionas it is defined by the claims.

The invention claimed is:
 1. A method of recording content received at amedia player, wherein the recorded content is presentable on a displaydevice to a user of the media player, the method comprising: receiving,at a first input of the media player, the content that is to berecorded, wherein the content that is to be recorded is identifiable bya first identifier (ID) data; receiving, at a second input of the mediaplayer, a plurality of second ID data, wherein each one of the pluralityof second ID data identifies one a plurality of content that is storedremotely at a remote server; comparing the first ID data with theplurality of second ID data; recording the content in response to nomatches between the first ID data and one of the plurality of second IDdata; and in response to a match between the first ID data and one ofthe plurality of second ID data, the method further comprising:preventing the recording of the content; and storing, at the mediaplayer, information associated with one of the plurality of second IDdata that matches the first ID data, wherein the stored information isconfigured to create a link from the media player to the remote serverand identify a storage location of the content associated with the firstID data that is remotely stored at the remote server.
 2. The method ofclaim 1, further comprising: receiving a selection by the user to viewthe content associated with the first ID data; establishing the linkfrom the media player to the remote server; and accessing the userselected content from the remote server, wherein the user selectedcontent is then viewed by the user.
 3. The method of claim 1, whereinprior to recording the content associated with the first ID data, themethod further comprising: determining if there is enough space in ahard drive of the media player to store the content that is to berecorded, wherein the content is recorded when there is enough space inthe hard drive to store the content; interrogating a plurality of remoteservers to identify an alternate source for the content when there isnot enough space in the hard drive to store the content; storing, at themedia player, information associated with one of the plurality of secondID data that matches the first ID data in a digital video recorder (DVR)recording list, wherein the stored information is configured to: createthe link from the media player to the identified alternate source thatis one of the interrogated plurality of remote servers that has thecontent; and identify the location of the content remotely stored at theidentified alternate source that is one of the interrogated plurality ofremote servers that has the content.
 4. The method of claim 3, furthercomprising: receiving a selection by the user to view the DVR recordinglist, wherein the DVR recording list indicates that the contentassociated with the first ID data has not been recorded, and wherein theDVR recording list indicates that the content associated with the firstID data is available from the identified alternate source that is one ofthe interrogated plurality of remote servers that has the content;establishing the link from the media player to the identified alternatesource that is interrogated plurality of remote servers that has thecontent; and accessing the user selected content from the identifiedalternate source that is one of the interrogated plurality of remoteservers, wherein the user selected content is then viewed by the user.5. The method of claim 3, further comprising: receiving a selection bythe user to view the content associated with the first ID data;establishing the link from the media player to the identified alternatesource that is one of the interrogated plurality of remote servers thathas the content; and accessing the user selected content from theidentified alternate source that is one of the interrogated plurality ofremote servers, wherein the user selected content is then viewed by theuser.
 6. The method of claim 1, further comprising: determining if therecording of the content associated with the first ID data has failed;interrogating a plurality of remote servers to identify an alternatesource for the content when the content associated with the first IDdata has failed to record; and storing, at the media player, informationassociated with the identified one of the plurality of second ID datathat matches the first ID data in a digital video recorder (DVR)recording list, wherein the stored information is configured to: createthe link from the media player to the identified alternate source thatis one of the interrogated plurality of remote servers that has thecontent; and identify the location of the content remotely stored at theidentified alternate source that is one of the interrogated plurality ofremote servers.
 7. The method of claim 1, wherein prior to recording thecontent associated with the first ID data, the method furthercomprising: interrogating a plurality of remote servers to identify analternate source for the content associated with the first ID;determining when the content will become available at the identifiedalternate source that is one of the interrogated plurality of remoteservers that has the content; and accessing the content remotely storedat the identified alternate source that is one of the interrogatedplurality of remote servers when the content becomes available, whereinthe accessed content is recorded.
 8. A media player that recordsreceived content, wherein the recorded content is presentable on adisplay device to a user of the media player, the apparatus comprising:a first input configured to receive the content that is to be recorded,wherein the content is identifiable by a first identifier (ID) data; asecond input configured to receive a plurality of second ID data,wherein each one of the plurality of second ID data identifies one aplurality of content that is stored remotely at least one of a pluralityof remote servers; a processor configured to: compare the first ID datawith the plurality of second ID data; record the content in response tono matches between the first ID data and one of the plurality of secondID data; and prevent the recording of the content in response to a matchbetween the first ID data and one of the plurality of second ID data;and a memory that stores information associated with one of theplurality of second ID data that matches the first ID data, wherein thestored information is configured to: create a link from the media playerto the remote server; and identify the location of the contentassociated with the first ID data that is remotely stored at the remoteserver.
 9. The media player of claim 8, further comprising: a storagedevice that stores the content that is to be recorded.
 10. The mediaplayer of claim 8, further comprising: a remote control receiverconfigured to receive a selection by the user to view the contentassociated with the first ID data, wherein in response to receiving theuser selection, the processor is further configured to: establish thelink from the second input of the media player to the remote server; andaccess the user selected content from the remote server, and wherein theuser selected content is then viewed by the user.
 11. The media playerof claim 8, wherein prior to receiving the content that is to berecorded, the processor is further configured to: determine if there isenough space in a hard drive of the media player to store the contentthat is to be recorded, wherein the content is recorded when there isenough space in the hard drive to store the content; interrogate aplurality of remote servers to identify an alternate source for thecontent when there is not enough space in the hard drive to store thecontent; and store information associated with one of the plurality ofsecond ID data that matches the first ID data in a digital videorecorder (DVR) recording list, wherein the stored information isconfigured to create the link from the media player to the identifiedalternate source that is one of the interrogated plurality of remoteservers that has the content and to identify the location of the contentremotely stored at the identified alternate source that is one of theinterrogated plurality of remote servers.
 12. The media player of claim11, further comprising: a remote control receiver configured to receivea selection by the user to view the DVR recording list, wherein the DVRrecording list indicates that the content associated with the first IDdata has not been recorded, and wherein the DVR recording list indicatesthat the content associated with the first ID data is available from theidentified alternate source that is one of the interrogated plurality ofremote servers that has the content, wherein in response to receivingthe user selection, the processor is further configured to: establishthe link from the media player to the identified alternate source thatis one of the interrogated plurality of remote servers that has thecontent; and access the user selected content from the identifiedalternate source that is one of the interrogated plurality of remoteservers that has the content, and wherein the user selected content isthen viewed by the user.
 13. The media player of claim 8, wherein theprocessor is further configured to: determine if the recording of thecontent associated with the first ID data has failed; interrogate aplurality of remote servers to identify an alternate source for thecontent when the content associated with the first ID data failed torecord; and store, at the media player, information associated with oneof the plurality of second ID data that matches the first ID data in adigital video recorder (DVR) recording list, wherein the storedinformation is configured to: create the link from the media player tothe identified alternate source that is one of the interrogatedplurality of remote servers that has the content; and identify thelocation of the content remotely stored at the identified alternatesource that is one of the interrogated plurality of remote servers. 14.The media player of claim 8, wherein prior to recording the contentassociated with the first ID, the processor is further configured to:interrogate a plurality of remote servers to identify an alternatesource for the content associated with the first ID; determine when thecontent will become available at the identified alternate source that isone of the interrogated plurality of remote servers; and access thecontent remotely stored at the identified alternate source that is oneof the plurality of remote servers.
 15. The media player of claim 8,wherein the first input and the second input are the same input.
 16. Anon-transitory computer-readable medium that includes code that isconfigured, when executed by a processor, to cause the processor toprovide access to transmitted programmes by performing a methodcomprising: receiving, at a first input of a media player, content thatis to be recorded, wherein the content is identifiable by a firstidentifier (ID) data; receiving, at a second input of the media player,a plurality of second ID data, wherein each one of the plurality ofsecond ID data identifies one a plurality of content that is storedremotely at a remote server; comparing the first ID data with theplurality of second ID data; recording the content in response to nomatches between the first ID data and one of the plurality of second II)data; and in response to a match between the first ID data and one ofthe plurality of second ID data, the code is further configured toperform the method of; preventing the recording of the content; andstoring at the media player, information associated with one of theplurality of second ID data that matches the first ID data, wherein thestored information is configured to create a link from the media playerto the remote server and identify the location of the content associatedwith the first ID data that is remotely stored at the remote server. 17.The non-transitory computer-readable medium of claim 16, wherein thecode is further configured to perform the method of: determining ifthere is enough space in a hard drive of the media player to store thecontent that is to be recorded, wherein the content is recorded whenthere is enough space in the hard drive to store the content;interrogating a plurality of remote servers to identify an alternatesource for the content when there is not enough space in the hard driveto store the content; storing, at the media player, informationassociated with one of the plurality of second ID data that matches thefirst ID data in a digital video recorder (DVR) recording list, whereinthe stored information is configured to: create the link from the mediaplayer to the identified alternate source that is one of theinterrogated plurality of remote servers that has the content; andidentify the location of the content remotely stored at the identifiedalternate source that is one of the interrogated plurality of remoteservers that has the content.
 18. The non-transitory computer-readablemedium of claim 16, wherein the code is further configured to performthe method of: determining if the recording of the content associatedwith the first ID data has failed; interrogating a plurality of remoteservers to identify an alternate source for the content when the contentassociated with the first ID data has failed to record; and storing, atthe media player, information associated with the identified one of theplurality of second ID data that matches the first ID data in a digitalvideo recorder (DVR) recording list, wherein the stored information isconfigured to: create the link from the media player to the identifiedalternate source that is one of the interrogated plurality of remoteservers that has the content; and identify the location of the contentremotely stored at the identified alternate source that is one of theinterrogated plurality of remote servers.
 19. The non-transitorycomputer-readable medium of claim 16, wherein the code is furtherconfigured to perform the method of: interrogating a plurality of remoteservers to identify an alternate source for the content associated withthe first ID; determining when the content will become available at theidentified alternate source that is one of the interrogated plurality ofremote servers that has the content; and accessing the content remotelystored at the identified alternate source that is one of theinterrogated plurality of remote servers when the content becomesavailable, wherein the accessed content is recorded.